Network device architecture and associated methods

ABSTRACT

A network device architecture comprising a fault-tolerant array of network processing modules, selectively coupled to trunk interface boards through main fabric switch(es) using high-bandwidth communication media and selectively coupled to any of a number of media processing modules using low-bandwidth communication media. Network content delivered to the network processing modules for network processing that contain media content are selectively coupled to any of the one or more media processing modules for additional media processing before passing the processed content to the next hop in the path towards the destination computing appliance.

TECHNICAL FIELD

Embodiments of the invention generally relate to data network(s) and,more particularly to a network device architecture and associatedmethods.

BACKGROUND

The term network device generally refers to a class of electronicappliances (e.g., hubs, switches, routers, etc.) that facilitate thecommunication of data (e.g., in packet form) within and between networksfrom a source computing appliance to a target computing appliance. Onetype of network device is a router.

Simplistically, a router is comprised of a number of interface ports,coupled with one or more network processor(s) through a high-bandwidthrouter switching fabric. Packets received at an interface port areswitched to an available network processor, which analyzes the packetheader to identify the target computing appliance and select a next hop(i.e., next node) in the network infrastructure to the target computingappliance.

Network devices (e.g., routers) are typically implemented using anextensible rack-mounted chassis. The chassis is comprised of a number ofslots, to receive one or more network processor boards, switchingboards, telco I/O boards, etc. The boards are communicatively coupled toone another through a backplane to which each of the boards is coupled.

One of the limitations commonly associated with such network devices isthat they are application specific. A router, for example, typicallyonly performs routing tasks, i.e., analyzing a packet header fordestination information, analyzing a router table to correlate theidentified destination with a next hop, and forwarding the packet to theidentified next hop towards the target destination. Network devices arenot designed for, and typically do not perform additional processingtasks extraneous to the task of moving packets from source todestination.

With the advent of streaming media, the amount of media content that isnow traversing otherwise traditional data networks continues to grow,although still a small subset of the overall traffic traversing thenetwork. Once the province of high-end desktop computers, media contentis now accessed by any number of clients including handheld devices(e.g., personal digital assistant (PDA), palmtop computers, wirelesstelephones, etc.), laptop computers, and the like. Such a broad range ofcomputing appliances has an associated range of computing power that canbe brought to bear on processing media content, some of which are up tothe task, while others need processing assistance to meet theexpectations of the user.

Consequently, there is a need to support the delivery of such mediacontent to/from a heterogeneous client-base, while expanding the scopeof services for traditional data networks and network devices.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is illustrated by way of example, and not by wayof limitation, in the figures of the accompanying drawings in which likereference numerals refer to similar elements and in which:

FIG. 1 is a block diagram of an example data network incorporating anembodiment of the invention;

FIG. 2 is a block diagram of an example network device architectureincorporating an embodiment of the invention;

FIG. 3 is a flow chart of an example method of routing packets inaccordance with an embodiment of the invention; and

FIG. 4 is a block diagram of a storage medium including content which,when executed by an accessing machine, causes the machine to implementone or more aspects of an embodiment of the invention.

DETAILED DESCRIPTION

Embodiments of the invention are generally directed to a method andassociated architecture for expanding router fabrics to perform mediaprocessing. More particularly, a network device architecture isintroduced comprising a fault-tolerant array of network processingmodules, selectively coupled to trunk interface boards through mainfabric switch(es) using high-bandwidth communication media. In additionto performing traditional network processing functions (e.g., switching,routing, etc.), network processing modules are selectively coupled toany of a number of media processing modules using low-bandwidthcommunication media. Network content (e.g., packets or datagrams)delivered to the network processing modules for network processing thatcontain media content may well be selectively coupled to any of the oneor more media processing modules for additional media processing, beforepassing the processed content to the next hop in the path towards thedestination computing appliance.

In this regard, an enhanced network device is presented including anextensible, fault-tolerant router fabric comprising network processingmodules and media processing modules. According to one exampleembodiment, discussed more fully below, the fault tolerance of theenhanced network device is achieved using an N+1 redundant architectureof network processing modules, wherein at least one extra networkprocessing module is populated within the chassis to assume the networkprocessing responsibility for any other network processing module thatbecomes non-functional, or to which communication is interrupted. Theredundant network processing module is communicatively coupled to atleast a subset of the media processing modules to support redundantmedia processing capability as well as network processing capability.

Those skilled in the art will appreciate that the architecture disclosedherein selectively provides media processing capabilities for at least asubset of packets passing through a host router. Examples of such mediaprocessing may well include one or more of echo cancellation,audio/video (en/de)coding, audio/video effects processing, etc.relieving the source and/or destination client of such processing tasksand improving their ability to render such content (audio/video) withoutundue interruptions, pauses or artifacts resulting from otherwiselimited processing capability of the client.

Reference throughout this specification to “one embodiment” or “anembodiment” means that a particular feature, structure or characteristicdescribed in connection with the embodiment is included in at least oneembodiment of the present invention. Thus, appearances of the phrases“in one embodiment” or “in an embodiment” in various places throughoutthis specification are not necessarily all referring to the sameembodiment. Furthermore, the particular features, structures orcharacteristics may be combined in any suitable manner in one or moreembodiments.

Example Network Environment

FIG. 1 illustrates a block diagram of an example network within whichthe teachings of the invention may well be practiced. As shown, network100 is depicted comprising a heterogeneous collection of computingappliances (e.g., clients) 102-112 coupled to the resources of datanetwork 114 through an enhanced network device (END) 116, incorporatingthe extensible fault-tolerant, media processing router fabricarchitecture of the present invention. In this regard, enhanced networkdevice 116 is depicted as an edge device supporting access to network114 for one or more of a media presentation system 102, a telephonyappliance 104, a local area network (LAN) 106 supporting wirelessclient(s) 108 and wired client(s) 110 as well as computing appliance116. Data network 114 is depicted coupled with one or more of computingappliance(s) (e.g., server 118), wireless computing appliance(s) 120,media resource(s) 122, and telephony device(s) 124, as shown. It shouldbe appreciated, however, that inventive features of network device 116are not limited to implementation as an edge device and, as such,network device 116 may well be implemented anywhere within network 114,LAN 106, or any other packet-switched network.

As introduced above, enhanced network device 116 includes afault-tolerant router fabric comprising main fabric switch(es)selectively coupling any of a number of trunk interface boards to one ormore network processing modules implemented as fabric expansion boards,which in turn are selectively coupled to one or more media processingmodules. According to one aspect of the present invention, networkdevice 116 includes at least one redundant network processing module,switchably coupled to any one or more of the trunk interface portsthrough the main fabric switch(es), wherein the main fabric switch(es)selectively substitute the redundant network processing module upondetecting a processing and/or communication failure associated with oneor more of the primary network processing modules.

According to one aspect of the invention, a switched serialcommunication architecture is used to communicatively couple theelements of the enhanced network device 200. According to one exampleimplementation, discussed more fully below, enhanced network device 200employs an InfiniBand™ architecture, using high-bandwidth communicationmedia to couple the trunk interface boards and the network processingmodules to the main fabric switches, while using lower-bandwidthcommunication media to couple the media processing modules to thenetwork processing modules. Variations on this allocation of bandwidthare anticipated within the scope and spirit of the present invention.

In addition to the network processing capability of the networkprocessing modules, enhanced network device 116 includes one or moremedia processing modules associated and redundantly coupled with each ofthe network processing modules using lower bandwidth communicationmedia. As developed more fully below, the media processing modules arepopulated with one or more media processor(s), which can perform some orall of the (en/de)coding associated with identified media packetsreceived at the network device 116, before forwarding such packets tothe next step in the path towards a destination computing appliance.

For purposes of clarity, and not limitation, only a single networkdevice (i.e., enhanced network device 116) is depicted within network100. Nonetheless, it should be appreciated that data network 114, LAN106, or other coupled network(s) may well include any number of legacyand/or enhanced network devices. In this regard, as will be developedmore fully below, END 116 is fully compatible with legacy networkdevice(s), e.g., routers, switches, hubs, etc.

As used herein, but for the inclusion of, and interoperation withenhanced network device 116, elements 102-114 and 118-124 are eachintended to represent such device(s) or network(s) as they are commonlyknown in the art. That is, enhanced network device 116 is compatiblewith any of a number of computing appliance(s) that use, or may beconfigured or adapted to use a conventional packet switched network.Indeed, the inclusion of enhanced network device 116 may well enable oneor more classes of computing appliance(s) to access and utilize mediacontent via a packet switched network that might not have had theprocessing power to support such applications previously. In thisregard, the enhanced network device architecture and associated methodsdisclosed herein is an enabling technology, facilitating the delivery ofmultimedia content to/from computing appliances that might not otherwisehave the processing horsepower to deliver such content in a manner thatwould be acceptable to a user of the client computing appliance.

Example Network Device Architecture

FIG. 2 illustrates a block diagram of an example enhanced network devicearchitecture 200, according to one example embodiment of the invention.According to one example implementation, enhanced network device 200 maywell be implemented within network 100 as, e.g., network device 116. Inaccordance with the illustrated example embodiment of FIG. 2, enhancednetwork device 200 is depicted comprising one or more trunk interfaceboard(s) 202A . . . N, main fabric switch(es) 206, one or more networkprocessing modules 208A . . . M, one or more redundant networkprocessing module(s) 218, and one or more media processing modules 220A.. . .X, each coupled as depicted. According to one example embodiment,the elements of enhanced network device 200 are coupled through aswitched serial fabric such as, e.g., an InfiniBand™ communicationnetwork. Further detail regarding the switched serial InfiniBand™communication architecture is provided with reference to the InfiniBand™Architecture Spectfication, volume 1, release 1.0.a, from theInfiniBand^(SM) Trade Association (Jun.19, 2001), the content of whichis incorporated herein by reference.

According to one example implementation, the trunk interface board(s)202A . . . N and the network processor module(s) 208A . . . M, 218 arecoupled to the main fabric (InfiniBand™) switch(es) 206 withhigh-bandwidth (e.g., 4× or 12×) InfiniBand™ communication links 204 and210, respectively. In contrast, the network processing module(s) 208A .. . M, 218 are coupled with the media processing module(s) 220A . . . Musing a number (X) of lower-bandwidth (e.g., 1×) InfiniBand™communication links 224. That is, given the limited amount of mediatraffic (as a percentage of total traffic carried by the network device200), a number (X) of lower-bandwidth InfiniBand™ links may well beused, enabling the InfiniBand™ fabric to allocate higher bandwidth insupport of processing the bulk of the traffic to/from the networkprocessing module(s) 208A . . . M. As used herein, the communicationfabric (e.g., InfiniBand™) coupling the elements of enhanced networkdevice 200 uniquely identifies each of the elements within the networkdevice (e.g., using an address, unique identifier, etc.).

Network processing module(s) (or, fabric expansion board(s)) 208A . . .M are depicted comprising one or more network processor(s) 212, anassociated one or more channel adapter(s) 214 and a switch 216. Inaccordance with the illustrated example implementation using theswitched serial InfiniBand™ fabric, communication from the main fabricswitch(es) 206 is received at switch 216 and passed to network processor212 via an InfiniBand™ channel adapter 214. As shown, channel adapter214 is a target channel adapter (TCA), but it is envisioned thatalternate channel adapters may well be substituted therewith withoutdeviating from the spirit and scope of the present invention.

As used herein, network processor(s) 212 of the network processingmodules 208A . . . M, 218 perform one or more conventional networkprocessing functions of switching and/or routing, as well as supportingvalue added services such as, e.g., quality of service prioritization,support of virtual channels, tunneling, and the like. In addition,according to one aspect of the invention, network processors 212 analyzeat least a subset of the content (e.g., a header, or payload) of areceived packet to determine whether the packet includes media content.If media content is identified, and further processing is warranted,network processor 212 routes the content to one or more mediaprocessor(s) 222A . . . X of an associated media processing module 220A. . . M for such media processing. In accordance with anotherembodiment, the entire packet may be sent to the media processor(s) 222.Any number of techniques may be used to identify whether a receivedpacket contains media content, any of which would be suitable forimplementation by network processor 212.

Media processing modules 220A . . . M are depicted comprising one ormore media processing engines (MP) 222A . . . X for performing mediaprocessing operations. The media processing engines may well beimplemented in hardware, (e.g., using a digital signal processor (DSP),field programmable gate array (FPGA), an application specific integratedcircuit (ASIC), and the like), or a combination of hardware and software(e.g., using a microprocessor, microcontroller, a special purposeprocessor, and the like). As introduced above, media processing modules220A . . . M can support any one or more of a number of different mediaprocessing operations, depending in part on the implementation intowhich END 200 is introduced. Examples of such media processingoperations include, but are not limited to, echo cancellation,en/decoding of media content, media effects processing, and the like.

Once a media processing engine 222 has completed its processing task(s),media processing module 220 sends the processed packet back to a networkprocessing module 208 for routing through the main fabric switch(es) 206and the trunk interface board(s) 202 to the network infrastructuretowards the target computing appliance denoted in the packet. Accordingto one example implementation, the packet is routed back through thenetwork processing module 208 that delivered the packet to the mediaprocessing module 220, although the invention is not limited in thisregard.

In accordance with one aspect of the present invention, a fault-tolerantimplementation of network processing module(s) 208 is implemented usingone or more redundant network processing modules 218. According to oneexample embodiment, an N+1 redundancy is employed wherein an extranetwork processing module 218 is populated within network device 200,and is reserved for substitution with another network processing module208A . . . M that is no longer functional, or to which communication hasceased. In accordance with the illustrated example implementation ofFIG. 2, the redundant network processing module 218 is selectivelyswitched into service by the main fabric switch(es) 206 upon detecting afault associated with a network processing module 208A . . . M. If thefault lies within the network processing module 208, the IBA switch 216reports the fault to the main fabric switch(es) 206, which dynamicallyreplaces the defective network processing module 208 in a switchingtable with the identifier of a redundant network processing module 218.Alternatively, the main fabric switch(es) 206 may detect a fault in thecommunication path 210 between the switch 206 and a network processingmodule 208, and dynamically replace the defective element 208 with theredundant network processing module 218 in a switching table. Accordingto one example implementation, main fabric switch(es) 206 maintain alist of active network processing modules 208A . . . M, when aprocessing module 208 or associated communication path 210 becomesinoperative, main fabric switch(es) 206 update the list to remove theidentified network processing module 208 with a redundant networkprocessing module 218.

In accordance with the illustrated example implementation, the redundantnetwork processing module 218 is architecturally and functionallyequivalent to that of the other network processing modules 208A . . . M,but is not limited in this regard. That is, redundant network processingmodules of greater or lesser complexity, which nonetheless perform thenetwork processing functions disclosed herein are anticipated within thescope and spirit of the present invention.

Operational Example(s)

Having introduced the operating environment and architectural elementsof the enhanced network device 200, above, attention is now directed toFIG. 3 where an operational example implementation of the enhancednetwork device 200 is presented in greater detail. For ease ofillustration, and not limitation, the method of FIG. 3 is developed withcontinued reference to FIGS. 1 and 2, as appropriate. Nonetheless, it isto be appreciated that the teachings of FIG. 3 may well be implementedin alternate network architectures/configurations without deviating fromthe spirit and scope of the present invention.

FIG. 3 is a flow chart of an example method of enhanced network deviceoperation, in accordance with one aspect of the present invention. Inaccordance with the illustrated example implementation of FIG. 3, themethod 300 begins with block 302 where enhanced network device 200receives content through one or more trunk interface board(s) 202A . . .N. The received content is passed to one or more main fabric switches206, block 304, through a high-bandwidth communication media such as,e.g., an InfiniBand™ 4× or 12× communication link 204.

In block 306, a main fabric switch 206 routes the received packet to anetwork processing module 208A . . . M for processing. According to oneexample implementation, main fabric switch(es) 206 apply load balancingfeatures to spread the load of received packets across the plurality ofnetwork processing module(s) 208A . . . M populating a host chassis 200.As introduced above, the main fabric switch(es) 206 are coupled with anInfiniBand™ switch 216 in the network processing module 208 using ahigh-bandwidth (e.g., 4× or 12×) InfiniBand™ communication link 210.

In making the selection of network processing module 208A . . . M, mainfabric switch(es) 206 determines whether any of the network processingmodule(s) 208A . . . M are experiencing faults (e.g., as reported byswitch 216), or whether a communication path 210 is experiencing afault, block 308. If so, the main fabric switch(es) 206 may well log thefailure, before substituting a redundant network processing module 218and/or communication link 210 for the faulty element, before passing thepacket to the appropriate network processing module.

In block 312, the network processing module 208 (or, 218) receives thepacket at the switch 216, which routes the packet to the networkprocessor 212 via the channel interface 214. As introduced above,network processor 212 analyzes at least a subset of the received packet(e.g., the header) to make a determination of routing conditionsassociated with the received packet (e.g., packet source, packetdestination, quality of service (QoS) parameters, etc.). In addition, inaccordance with one aspect of the invention, network processor 212analyzes at least a subset of the received packet to determine whetherthe packet includes audio and/or video content, block 314.

If, in block 314, network processor 212 identifies media content in thereceived packet, network processor 212 directs the received packet to anassociated media processing module 220A . . . M for media processing,block 316. That is, network processor 212 routes the packet back throughthe channel adapter 214 and the switch 216 to one or more of alower-bandwidth (e.g., 1×) InfiniBand™ communication link of theplurality of links 224 coupled with a media processing engine 222 of anassociated media processing module 220.

In block 318, the media processing engine 222 selectively processes themedia content, as appropriate, before sending the processed packet to anetwork processing module 208 (or, 218) for routing towards the targetdestination. As introduced above, the media processing engine 222 maywell perform any of a number of processing tasks such as, e.g., one ormore of media (en/de)coding, echo cancellation, media effectsprocessing, and the like. The type of media processing performeddepends, at least in part, on the state of the content received, itssource, and/or its destination. If, for example, the media content isreceived directly from a coupled communication client, or from a clientwith minimal encoding having been performed, media processing engine 222detects this, and selectively performs additional processing beforetransmission through the network architecture towards its targetdestination. Conversely, if a packet is received from the networkarchitecture and is nearing its target destination, media processingengine 222 may well selectively invoke one or more media decodingprocesses to relieve certain decoding tasks from the target client.

If network processor 212 determines (block 314) that the received packetdoes not include media content, or once the media processing (block 318)is completed, network processor 212 identifies routing informationassociated with a next node (e.g., network device) in the path towardsthe target destination of the computing appliance, and forwards thepacket to the identified node, block 320. More specifically, networkprocessor 212 correlates information identified within the receivedpacket against information contained in a routing table (notparticularly denoted) to identify the next point (sometimes referred toas a hop) in the network architecture towards the target destination,modifies physical layer header information associated with the packet,and sends the packet into the network 100 through, e.g., channel adapter214, switch 216, main fabric switch(es) 206 and a trunk interface board202.

Alternate Embodiment(s)

FIG. 4 is a block diagram of an example storage medium comprising aplurality of executable instructions which, when executed, cause anaccessing machine to implement one or more aspects of the innovativenetwork device architecture and/or associated methods. In this regard,storage medium 400 includes content 402 for implementing a faulttolerant, extensible network device architecture and associated methods,in accordance with an alternate embodiment of the present invention.

In the description above, for the purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of the present invention. It will be apparent, however, toone skilled in the art that the present invention may be practicedwithout some of these specific details. In other instances, well-knownstructures and devices are shown in block diagram form.

The present invention includes various steps. The steps of the presentinvention may be performed by hardware components, such as those shownin FIGS. 1 and 2, or may be embodied in machine-executable instructions,which may be used to cause a general-purpose or special-purposeprocessor or logic circuits programmed with the instructions to performthe steps. Alternatively, the steps may be performed by a combination ofhardware and software. Moreover, although the invention has beendescribed in the context of a network device, those skilled in the artwill appreciate that such functionality may well be embodied in any ofnumber of alternate embodiments such as, for example, integrated withina computing device (e.g., a server).

The present invention may be provided as a computer program product,which may include a machine-readable medium having stored thereoninstructions which may be used to program a computer (or otherelectronic devices) to perform a process according to the presentinvention. The machine-readable medium may include, but is not limitedto, floppy diskettes, optical disks, CD-ROMs, and magneto-optical disks,ROMs, RAMs, EPROMs, EEPROMs, magnet or optical cards, flash memory, orother type of media/machine-readable medium suitable for storingelectronic instructions. Moreover, the present invention may also bedownloaded as a computer program product, wherein the program may betransferred from a remote computer to a requesting computer via acommunication link (e.g., a modem or network connection).

Many of the methods are described in their most basic form but steps canbe added to or deleted from any of the methods and information can beadded or subtracted from any of the described messages without departingfrom the basic scope of the present invention. For example, networkprocessor(s) 212 may well be implemented on one or more of trunkinterface board(s) 202A . . . N and/or media processing module(s) 220A .. . M. Alternatively, media processing engines 222A . . . X may well beimplemented within the fabric expansion (network processing) modules208A . . . M. In yet another embodiment, processor elements (notparticularly denoted) on the trunk interface boards perform an initialanalysis of a received packet to determine whether the packet includesmultimedia content and, if so, routes the packet through a networkprocessing module switch 216 directly to a media processing module 220A. . . M, before being routed to a network processor 212 fornetwork-related processing. Any number of variations of the inventiveconcept are anticipated within the scope and spirit of the presentinvention.

In this regard, the particular illustrated example embodiments are notprovided to limit the invention but merely to illustrate it. Thus, thescope of the present invention is not to be determined by the specificexamples provided above but only by the plain language of the followingclaims.

1. A method comprising: receiving a packet at a trunk interface board ofa network device, the network device including a plurality of networkprocessing modules coupled to a plurality of trunk interface boardsthrough a switched communication fabric; identifying an availablenetwork processing module from the plurality of network processingmodules to process the received packet; and routing the received packetto the identified network processing module, which determines whetherthe received packet includes media content requiring additional mediaprocessing, before performing traditional network processing on thereceived packet.
 2. A method according to claim 1, the identifying anavailable network processing module comprising: accessing a list ofactive network processing modules within a main fabric switch of thenetwork device; and selecting a network processing module from the list.3. A method according to claim 2, further comprising: detecting a faultassociated with an identified network processing module, orcommunication link associated therewith; and updating the list of activenetwork processing modules to remove the identified network processingmodule and to add an identifier associated with a redundant networkprocessing module.
 4. A method according to claim 1, the method furthercomprising: analyzing at least a subset of the received packet todetermine whether the received packet includes media content; androuting packets with media content to an associated media processingmodule for media processing.
 5. A method according to claim 4, whereinthe media processing includes one or more of echo cancellation, mediaencoding, media decoding, and media effects processing.
 6. A methodaccording to claim 4, further comprising: sending the processed mediapacket back to a network processing module for traditional networkprocessing prior to transmission towards an identified targetdestination of the media packet via a trunk interface board.
 7. A methodaccording to claim 1, wherein performing traditional network processingcomprises: analyzing a subset of the received packet to identify atarget destination; identifying another network device in a networkcommunication path towards the target destination based, at least inpart, on content within the subset of the received packet.
 8. A computerreadable medium having stored thereon, computer executable instructionswhich, when executed by an accessing network device, causes the networkdevice to implement a method including, receiving a packet at a trunkinterface board of a network device, the network device including aplurality of network processing modules coupled to a plurality of trunkinterface boards through a switched communication fabric; identifying anavailable network processing module from the plurality of networkprocessing modules to process the received packet; and routing thereceived packet to the identified network processing modules, whichdetermines whether the received packet includes media content requiringadditional media processing, before performing traditional networkprocessing on the received packet.
 9. A computer readable mediumaccording to claim 8, wherein the instructions to implement ofidentifying an available network processing module causes the accessingnetwork device to implement a method comprising: accessing a list ofactive network processing modules within a main fabric switch networkdevice; and selecting a network processing module from the list.
 10. Acomputer readable medium according to claim 9, further comprisinginstruction that causes an accessing network device to implement amethod comprising: detecting a fault associated with an identifiednetwork processing module, or communication link associated therewith;and updating the list of active network processing modules to remove theidentified processing module and to add an identifier associated with aredundant network processing module.
 11. A computer readable mediumaccording to claim 8, further comprising instruction that causes anaccessing network device to implement a method comprising: analyzing atleast a subset of the received packet to determine whether the receivepacket includes media content; and routing packets with media content toan associated media processing module for processing.
 12. A computerreadable medium according to claim 11, wherein the instructions toperform media processing includes instruction that causes the accessingnetwork device to implement one or more of echo cancellation, mediaencoding, media decoding, and media effects processing on the receivedmedia packet.
 13. A system comprising: one or more communication media;and a network device, coupled with the one or more communication media,to receive content from remote devices through the one or morecommunication media, the network device including, one or more trunkinterface boards, coupled with the communication media; a plurality ofnetwork processing modules, coupled with the one or more trunk interfaceboards through a switched communication fabric, to determine whetherpacket received from the trunk interface board(s) includes media contentand, if so, to pass at least the media content to a communicativelycoupled media processing module; and main fabric switch(es), coupledbetween the network processing module(s) and the trunk interfaceboard(s), to receive a packet from the one or more trunk interfaceboard(s) and identify an available network processing module to processthe received packet.
 14. A system according to claim 13, wherein thenetwork device selectively processes media content identified inreceived packets before forwarding such packets towards an identifieddestination via said communication media.
 15. An apparatus comprising:one or more trunk interface boards; a plurality of network processingmodules, coupled with the one or more trunk interface boards through aswitched communication fabric, each of the plurality of networkprocessing modules to determine whether a packet received from the trunkinterface board(s) includes media content and, if so, to pass at leastthe media content of the packet to a media processing modulecommunicatively coupled to each of the plurality of network processingmodules; one or more media processing modules, coupled with the networkprocessing modules, to receive packets containing media content andperform select media processing operation(s) thereon wherein the mediaprocessing module(s) are coupled to associated network processingmodules through a second switched communication fabric, the secondswitched communication fabric having a lower bandwidth than the switchedcommunication fabric coupling the trunk interface board(s) and networkprocessor(s).
 16. An apparatus according to claim 15, wherein thelower-bandwidth switched communication fabric is comprised ofInfiniBand™ 1× communication links.